package AppView;

import Listeners.MenuListeners;

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;

public class MenuSection extends JMenuBar {

    public MenuSection() {

        JMenu fileMenu = new JMenu("文件");
        fileMenu.add(saveItem());
        fileMenu.add(newItem());
        fileMenu.add(openItem());
        add(fileMenu);

        JMenu tips = new JMenu("提示");
        tips.add("左键单击图像可以聚焦");
        tips.add("右键点击画布区可以取消聚焦");
        tips.add("绘制出的愿可以通过调整大小来变形为椭圆");
        tips.add("创建时间越晚，垂直位置就越高，会被优先选取");
        tips.add("目前暂时只支持四个方向的修改大小");
        tips.add("目前暂时不支持对字体的线条粗细调节");
        add(tips);
    }

    /**
     * 返回构建保存文件的菜单选项,以下类似
     *
     * @return 构建的菜单选项
     */
    JMenuItem saveItem() {
        JMenuItem save = new JMenuItem("保存");
        save.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, ActionEvent.CTRL_MASK));
        save.addActionListener(MenuListeners.getSaveFileActionListener());
        return save;
    }


    JMenuItem newItem() {
        JMenuItem newFile = new JMenuItem("新建");
        newFile.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, ActionEvent.CTRL_MASK));
        newFile.addActionListener(MenuListeners.getNewFileActionListener());
        return newFile;
    }

    /**
     * 产生“打开”菜单项
     *
     * @return “打开”菜单项
     */
    JMenuItem openItem() {
        JMenuItem open = new JMenuItem("打开");
        open.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, ActionEvent.CTRL_MASK));
        open.addActionListener(MenuListeners.getOpenFileActionListener());
        return open;
    }



}
